﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;

namespace api_version.Controllers.v1
{
    //Deprecated 表示该版本即将废弃，但并不影响使用，response header 中有显示
    [ApiVersion("1.0",Deprecated =true)]
    [ApiVersion("1.3")]
    [Route("api/v{version:apiVersion}/[controller]")]
    //[Route("api/[controller]")]
    public class ValuesController : Controller
    {
        // GET api/values
        //属性允许将单个 API 操作映射到任何版本
        [HttpGet,MapToApiVersion("1.3")]
        public string Get()
        {
            return "this is api version 1.0";
        }

        // GET api/values/5
        [HttpGet("{id}")]
        public string Get(int id)
        {
            return "value";
        }

        // POST api/values
        [HttpPost]
        public void Post([FromBody]string value)
        {
        }

        // PUT api/values/5
        [HttpPut("{id}")]
        public void Put(int id, [FromBody]string value)
        {
        }

        // DELETE api/values/5
        [HttpDelete("{id}")]
        public void Delete(int id)
        {
        }
    }
}
